/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package borisysakyconsola;

import Estetica.Cita;
import Estetica.Cliente;
import Estetica.Producto;
import com.mysql.jdbc.Connection;
import com.mysql.jdbc.Statement;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.util.List;


/**
 *
 * @author Usuario
 */
public class BorisYSakyConsola {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) throws IOException, SQLException {
        // TODO code application logic here
        Cliente cliente = new Cliente();
        Producto producto = new Producto();
        Cita cita=new Cita();
        InputStreamReader isr = new InputStreamReader(System.in);
        BufferedReader br = new BufferedReader (isr);
        String cadena="0";
        String email;
        while(!cadena.contentEquals("4"))
        {
        System.out.println("--------------------------------");
        System.out.println("|         ¿Que quieres?        |");
        System.out.println("|          1.- Clientes        |");        
        System.out.println("|          2.- Citas           |");
        System.out.println("|          3.- Productos       |");
        System.out.println("|          4.- Salir           |");
        System.out.println("--------------------------------");

        
        
        System.out.println("Introduce la opcion deseada: ");
        cadena = br.readLine();
        if("1".equals(cadena))
        {
            System.out.println("--------------------------------");
            System.out.println("a) registrar cliente");
            System.out.println("b) listar clientes");
            System.out.println("c) borrar clientes");
            System.out.println("d) modificar clientes");
            System.out.println("e) buscar cliente por mail");
            System.out.println("--------------------------------");
            System.out.println("Opcion: ");
           cadena = br.readLine();
           if("a".contentEquals(cadena))
           {
            
                System.out.println("Introduce el nombre: ");
                cliente.setNombre(br.readLine());
                System.out.println("Introduce el apellido: ");
                cliente.setApellido(br.readLine());
                System.out.println("Introduce el nick: ");
                cliente.setNick(br.readLine());
                System.out.println("Introduce el password: ");
                cliente.setPassword(br.readLine());
                System.out.println("Introduce tu genero: ");
                cliente.setGenero(br.readLine());
                System.out.println("Introduce email");
                cliente.setEmail(br.readLine());
                cliente.guardar();
                System.out.println("Cliente guardado! :)");
           }
           else if("b".contentEquals(cadena))
           {
                System.out.println("Estos son los clientes del ByS: ");
                 String connURL= "jdbc:mysql://localhost:3306/bysDB";
                 Connection conn = (Connection) DriverManager.getConnection(connURL,"bys-dba","password");
                List <Cliente>  a= cliente.getAllClientes(conn);
                for (int i = 0; i < a.size(); i++) {
                  Cliente clienteAux=a.get(i);
                    System.out.println("Cliente numero: "+(i+1));
                    System.out.println("Nombre Cliente: "+clienteAux.getNombre());
                    System.out.println("Apellido: "+clienteAux.getApellido());
                    System.out.println("Nick: "+clienteAux.getNick());
                    System.out.println("Correo del cliente: "+clienteAux.getEmail());
                    System.out.println("-------------------");
                
                
                //tenemos que llamar a a cliente.listar
                }
           }
           else if("c".contentEquals(cadena))
           {
               String connURL= "jdbc:mysql://localhost:3306/bysDB";
                Connection conn = (Connection) DriverManager.getConnection(connURL,"bys-dba","password");
     
               System.out.println("Dame el correo del cliente: ");
               email = br.readLine();
               Cliente clienteAux = new Cliente();
               clienteAux.getByEmail(conn, email);
               clienteAux.borrar();
               //tenemos que llamar a cliente.borrarCliente
           }
           else if("d".contentEquals(cadena))
           {
               System.out.println("Cliente para modificar, dame el mail: ");
               email = br.readLine();
               
           }
           else if("e".contentEquals(cadena))
           {
               String connURL= "jdbc:mysql://localhost:3306/bysDB";
                Connection conn = (Connection) DriverManager.getConnection(connURL,"bys-dba","password");
     
               System.out.println("Dame el correo del cliente");
               email = br.readLine();
               Cliente clienteAux = new Cliente();
               clienteAux.getByEmail(conn, email);              
                    System.out.println("Nombre Cliente: "+clienteAux.getNombre());
                    System.out.println("Apellido: "+clienteAux.getApellido());
                    System.out.println("Nick: "+clienteAux.getNick());
                    System.out.println("Correo del cliente: "+clienteAux.getEmail());
                    System.out.println("-------------------");                     
           }
                    
            
            
        }
        else if("2".contentEquals(cadena))
        {
            
            System.out.println("--> Introducir cita");
            String connURL= "jdbc:mysql://localhost:3306/bysDB";
            Connection conn = (Connection) DriverManager.getConnection(connURL,"bys-dba","password");
          
           Statement stmt = (Statement) conn.createStatement();
            System.out.println("Introduce el email del cliente: ");
           String emailCliente = br.readLine();
            System.out.println("Introduce la fecha de la cita: (DD-MM-AAAA): ");
           String fecha=br.readLine();
            System.out.println("Introduce la hora:(HH:MM): ");
            String hora=br.readLine();
            System.out.println("Introduce el comentario: ");
            String comentarios=br.readLine();
            System.out.println("Introduce el tratamiento: ");
            String tratamiento=br.readLine();
            System.out.println("Introduce especialista: ");
            String especialista=br.readLine();
            String sentencia = "INSERT INTO `bysDB`.`citapendiente` (fechaHora,tratamiento,especialista,emailCliente,comentarios) VALUES ('"+fecha+"','"+tratamiento+"','"+especialista+"','"+emailCliente+"','"+comentarios+"');";
            stmt.executeUpdate(sentencia);
            
            
            
            
        }
        else if("3".contentEquals(cadena))
        {
             System.out.println("a) añadir producto");
             System.out.println("Opcion: ");
             cadena = br.readLine();

             if("a".contentEquals(cadena))
                {        
        
                System.out.println("Introduce el nombre: ");
                producto.setNombre(br.readLine());
                System.out.println("Introduce el tipo: ");
                producto.setTipo(br.readLine());
                System.out.println("Introduce la descripcion: ");
                producto.setDescripcion(br.readLine());
                System.out.println("Introduce el precio: ");
                producto.setPrecio(Integer.parseInt(br.readLine()));
                System.out.println("Introduce si es portable: ");
                producto.setPortable(br.readLine());
                System.out.println("Introduce el peso");
                producto.setPeso(Integer.parseInt(br.readLine()));
                System.out.println("Introduce si es consumible");
                producto.setConsumible(br.readLine());                
                System.out.println("Introduce la cantidad");
                producto.setCantidad(Integer.parseInt(br.readLine()));
                producto.guardar();
                System.out.println("producto guardado! :)");
                }
        }
        
    }
    }
}